﻿var ListaPreciosCotizacionesSeleccionada = 1;
var TasaIvaCotizciones = 16;
var ListaFacturasCotizacion;

function initModuloVentas() {

    AutocompletarClientesCotizaciones();
    if ($('#cantidadConceptosCotizacion').val() == "0")
        nuevoConceptoCotizacion();
    $("#DivTotalesCotizacion input").attr("readonly", "readonly");
    $("#DescuentoCotizacion").attr("readonly", "");
    $("#FechaVencimientoCotizacion").attr("readonly", "readonly").datepicker({ minDate: +1,
        maxDate: "+6M",
        numberOfMonths: 2,
        showButtonPanel: true
    });
    InicializarUI();
}


function InitCotizacionesGrid() {
    $("#GridTableVentas").jqGrid
		(
		{
			url: '/ModuloVentas.aspx?listado=true&',
			    // url: '/ModuloVentas.aspx?listado=true&idCliente=' + idClienteDetalle + '&',
		    dataType: 'xml',
		    colNames: ['Cot.', 'Fecha', 'Status', 'Status Texto', 'Razon social', 'Nombre Comercial', 'Total', 'Pagado', 'Pendiente', 'Credito', 'Vencidos', 'Critic'],
		    colModel: [		
			{ name: 'id', index: 'C.id',  align: 'right' ,width:30},
            { name: 'fechaCreacion', index: 'C.fechaCreacion', align: 'center', width: 55 },
            { name: 'Status', index: 'status', align: 'center', width: 20 },
            { name: 'StatusIcon', index: 'status', align: 'left', width: 70 },
            { name: 'RazonSocial', index: 'RazonSocial' },
			{ name: 'NombreComercial', index: 'NombreComercial' },
            { name: 'Total', index: 'Total', formatter: 'currency', align: 'right', width: 80 },
            { name: 'SaldoPagado', index: 'SaldoPagado', formatter: 'currency', align: 'right', width: 80 },
            { name: 'SaldoPendiente', index: 'SaldoPendiente', formatter: 'currency', align: 'right', width: 80 },
            { name: 'DiasCredito', index: 'DiasCredito', width: 30 },
            { name: 'DiasVencidos', index: 'DiasVencidos', width: 30 },
            { name: 'Critic', index: 'Critic',hidden:true }
    		],
			rowNum: 30,
			rowList: [10, 20, 30, 50, 100, 200, 300, 500, 1000],
			sortname: 'C.id',
            sortorder:'desc',
			pager: $('#pagerGridTableVentas'),
			viewrecords: true,
			caption: 'Cotizaciones',
			width: 1000,
			height: GridTotalHeight - 8,
			footerrow: true,
			userDataOnFooter: true,
			altRows: true,
			ondblClickRow: function (id, linea, columna, evento) {
			    CargarPaginaVentas2('/ModuloVentas.aspx?idVenta=' + id + '&detalle=true');
			}
            , loadComplete: function () {
                var rowIDs = $("#" + this.id).getDataIDs();
                for (var i = 0; i < rowIDs.length; i = i + 1) {
                    rowData = $("#" + this.id).getRowData(rowIDs[i]);
                    var trElement = $("#" + rowIDs[i], $('#' + this.id));
                    if (rowData.Critic == " critic ") {
                        trElement.removeClass('ui-widget-content');
                        trElement.addClass('critic');
                    }
                    if (rowData.Critic == " urgent ") {
                        trElement.removeClass('ui-widget-content');
                        trElement.addClass('urgent');
                    }
                }

            }
		}
	);
    buscadorJQGrid('GridTableVentas', 'pagerGridTableVentas', '', 22);
    //			    OnDoubleClick: function (id) { CargarPaginaVentas('/ModuloVentas.aspx?idVenta=' + id + '&detalle=true'); }
    //			}
    //			);



}

///
function initDetalleCotizaciones(idCotizacion) {
    LoadFacturasCotizacionJSON(idCotizacion);
    //alert('/ModuloVentas.aspx?listado=true&pagos=true&idDocumento=' + idCotizacion);

    if ($("#idStatusVentaMostrada").val() != "1") {

        $("#cotizacionPagos").jqGrid
			(
			{
			    url: '/ModuloVentas.aspx?listado=true&pagos=true&idDocumento=' + idCotizacion + '&',
			    dataType: 'xml',
			    colNames: ['pago', 'Fecha', 'Factura', 'Tipo', 'Cuenta','Monto'],
			    colModel: [
			    //id,clave,descripcion,idmarca,idcategoria,idfamilia,precio1,precio2,precio3,especifiaciones
				{index: 'P.id', name: 'P.id', width: 40,  align: 'center' },
                { index: 'fechaRealizacion', name: 'fechaRealizacion', width: 65,  align: 'center' },
				{ index: 'FolioFactura', name: 'FolioFactura', width: 50, align: 'center' },
                { index: 'tipoMovimiento', name: 'tipoMovimiento', width: 80, align: 'center' },
                { index: 'alias', name: 'alias', width: 80, align: 'center' },
                { index: 'TotalPago', name: 'TotalPago', width: 80, formatter: 'currency', align: 'right' }
				],
			    rowNum: 30,
			    rowList: [10, 20, 30, 50, 100, 200, 300, 500, 1000],
			    sortname: 'P.id',
			    sortorder: 'desc',
			    //pager: $('#pagerGridTableVentas'),
			    viewrecords: true,
			    caption: 'Pagos',
			    width: 500,
			    height: 200,
			    footerrow: true,
			    userDataOnFooter: true,
			    altRows: true,
			    ondblClickRow: function (id, linea, columna, evento) {
			        CargarPaginaVentas2('/ModuloVentas.aspx?idVenta=' + id + '&detalle=true');
			    } 
			});

        $("#cotizacionFacturas").jqGrid
			(
			{
			    url: '/ModuloVentas.aspx?listado=true&facturas=true&idDocumento=' + idCotizacion,
			    dataType: 'xml',
			    colModel: [
			    //id,clave,descripcion,idmarca,idcategoria,idfamilia,precio1,precio2,precio3,especifiaciones
				{name: 'id',index: 'id', width: 30, sortable: true, align: 'center' },
                {name: 'noFolio',index: 'noFolio', width: 55, sortable: true, align: 'center' },
                {name: 'fechaFacturacion',index: 'fechaFacturacion', width: 65, sortable: true, align: 'center' },
                {name: 'Total',index: 'Total', width: 75, sortable: true,formatter: 'currency',  align: 'right' },
                {name: 'SaldoPagado', index: 'SaldoPagado', width: 75, sortable: true,formatter: 'currency',  align: 'right' },
                {name: 'SaldoPendiente',index: 'SaldoPendiente', width: 75, sortable: true, formatter: 'currency', align: 'right' },
                {name: 'pdf',index: 'pdf', width: 16, sortable: true, align: 'center' }
				],
			   
			    rowNum: 30,
			    rowList: [10, 20, 30, 50, 100, 200, 300, 500, 1000],
			    sortname: 'id',
			    sortorder: 'desc',
			    //pager: $('#pagerGridTableVentas'),
			    viewrecords: true,
			    caption: 'Pagos',
			    width: 500,
			    height: 200,
			    footerrow: true,
			    userDataOnFooter: true,
			    altRows: true,
			    ondblClickRow: function (id, linea, columna, evento) {
			        window.open('/PrintInvoice.aspx?idFactura=' + id + '&detalle=true');
			    } 
			});			
    }
}


function InitReporteVentas() {
    var fInicial = $("#RepVenFechaInicial").val();
    var fFinal = $("#RepVenFechaFinal").val();
    $("#TableReporteVentas").flexigrid
			(
			{
			    url: '/ModuloVentas.aspx?listado=true&RepVentas=true&fechaInicial=' + fInicial + '&fechaFinal=' + fFinal + '&',
			    dataType: 'json',
			    colModel: [
			    //id,clave,descripcion,idmarca,idcategoria,idfamilia,precio1,precio2,precio3,especifiaciones
				{display: 'No. Cot.', name: 'id', width: 40, sortable: true, align: 'center' },
                { display: 'No. Factura', name: 'nofactura', width: 50, sortable: true, align: 'center' },
                { display: 'No. Ped.', name: 'NoPedido', width: 40, sortable: true, align: 'center', hide: true },
                { display: 'No. Rem.', name: 'NoRemision', width: 40, sortable: true, align: 'center', hide: true },
                { display: 'No. Sal.', name: 'NoSalida', width: 40, sortable: true, align: 'center', hide: true },
                { display: 'Fecha', name: 'fechaCreacion', width: 55, sortable: true, align: 'center' },
                { display: 'F. Ped.', name: 'FechaPedido', width: 55, sortable: true, align: 'center', hide: true },
                { display: 'F. Rem.', name: 'FechaRemision', width: 55, sortable: true, align: 'center', hide: true },
                { display: 'F. Sal.', name: 'FechaSalida', width: 55, sortable: true, align: 'center', hide: true },
                { display: 'Status', name: 'status', width: 95, sortable: true, align: 'left' },
				{ display: 'Razon social', name: 'nombreCliente', width: 310, sortable: true, align: 'left' },
                { display: 'Nombre Comercial', name: 'nombrecomercialcliente', width: 335, sortable: true, align: 'left', hide: true },
                { display: 'Total', name: 'total', width: 70, sortable: true, align: 'right' },
                { display: 'Pagado', name: 'saldoPagado', width: 70, sortable: true, align: 'right' },
				{ display: 'Pendiente', name: 'saldoPendiente', width: 70, sortable: true, align: 'right' },
                { display: 'Dias Credito', name: 'DiasCredito', width: 60, sortable: true, align: 'center' },
                { display: 'Dias Vencidos', name: 'DiasVencidos', width: 60, sortable: true, align: 'center' }
				],
			    searchitems: [
				{ display: 'No. Venta', name: 'id' },
				{ display: 'Razon Social', name: 'NombreCliente', isdefault: true },
                { display: 'Nombre Comercial', name: 'NombreComercialCliente' },
                { display: 'Total', name: 'Total' }
				],
			    sortname: "id",
			    sortorder: "desc",
			    usepager: true,
			    title: 'Reporte de Ventas',
			    useRp: true,
			    width: 1020,
			    height: GridTotalHeight,
			    pagestat: 'Mostrando de {from} a {to} de un total de {total} registros',
			    pagetext: 'Pagina',
			    outof: 'de',
			    findtext: "Buscar <span style='font-size:8px;'>(presione Enter para realizar la busqueda)</span>",
			    procmsg: 'Procesando, Espere por favor ...',
			    nomsg: 'No hay registros',
			    resizable: false,
			    blockOpacity: 0.75,
			    onSuccess: function () { AddGridTotals('TableReporteVentas'); },
			    OnDoubleClick: function (id) { CargarPaginaVentas('/ModuloVentas.aspx?idVenta=' + id + '&detalle=true'); }
			}
			);
}


function AutocompletarClientesCotizaciones() {

    $("#NombreClienteCotizacion").autocomplete(ListaClientes, {
        minChars: 0,
        width: 250,
        matchContains: "word",

        autoFill: false,
        formatItem: function (row, i, max) {
            return i + "/" + max + ": \"" + row.RazonSocial + " - \"" + row.NombreComercial + "\" [" + row.RFC + "]";
        },
        formatMatch: function (row, i, max) {
            return row.RazonSocial;
        },
        formatResult: function (row) {
            return row.RazonSocial;
        }
    }).result(function (event, item) {
        with (item) {
            if (id != 0) {
                $("#idClienteCotizacion").val(id);
                $("#NombreComercialClienteCotizacion").val(NombreComercial).attr("readonly", "true");
                $('#RFCClienteVenta').val(RFC).attr("readonly", "true");
                with (DireccionFacturacion) {
                    $('#F_CalleVenta').val(Calle).attr("readonly", "true");
                    $('#F_NumeroInteriorVenta').val(NumeroInterior).attr("readonly", "true");
                    $('#F_NumeroExteriorVenta').val(NumeroExterior).attr("readonly", "true");
                    $('#F_ColoniaVenta').val(Colonia).attr("readonly", "true");
                    $('#F_MunicipioVenta').val(Municipio).attr("readonly", "true");
                    $('#F_CiudadVenta').val(Ciudad).attr("readonly", "true");
                    $('#F_EstadoVenta').val(Estado).attr("readonly", "true");
                    $('#F_CPVenta').val(CP).attr("readonly", "true");
                }
                with (DireccionEnvio) {
                    $('#CalleVenta').val(Calle);
                    $('#NumeroInteriorVenta').val(NumeroInterior);
                    $('#NumeroExteriorVenta').val(NumeroExterior);
                    $('#ColoniaVenta').val(Colonia);
                    $('#MunicipioVenta').val(Municipio);
                    $('#CiudadVenta').val(Ciudad);
                    $('#EstadoVenta').val(Estado);
                    $('#CPVenta').val(CP);
                }

                var ObjConPago = TipoCondicionesPago(idCondicionesPago);
                $("#idCondicionesPagoCotizacion").val(idCondicionesPago);
                $("#idListaPreciosCotizacion").val(idListaPrecios);
                var listaPreciosLetra = "A";
                switch (idListaPrecios) {
                    case 1:
                        listaPreciosLetra = "A";
                        break;
                    case 2:
                        listaPreciosLetra = "B";
                        break;
                    case 3:
                        listaPreciosLetra = "C";
                        break;
                    case 4:
                        listaPreciosLetra = "D";
                        break;
                }
                $("#listaPreciosCotizacion").val(listaPreciosLetra).attr("readonly", "true");
                $('#CondicionesPagoVenta').val(ObjConPago.NombreCondicion).attr("readonly", "true");

                InicializarUI();
                ListaPreciosCotizacionesSeleccionada = idListaPrecios;
                TipoCondicionesPago(1);
                CalcularTotales(TasaIvaCotizciones);
            }
        }

    }).setOptions({ data: ListaClientes });

}

function blokClientDataCot() {
    $("#NombreComercialClienteCotizacion").attr("readonly", "true");
    $('#RFCClienteVenta').attr("readonly", "true");
    $('#F_CalleVenta').attr("readonly", "true");
    $('#F_NumeroInteriorVenta').attr("readonly", "true");
    $('#F_NumeroExteriorVenta').attr("readonly", "true");
    $('#F_ColoniaVenta').attr("readonly", "true");
    $('#F_MunicipioVenta').attr("readonly", "true");
    $('#F_CiudadVenta').attr("readonly", "true");
    $('#F_EstadoVenta').attr("readonly", "true");
    $('#F_CPVenta').attr("readonly", "true");
    $("#listaPreciosCotizacion").attr("readonly", "true");
    $('#CondicionesPagoVenta').attr("readonly", "true");
}

function TipoCondicionesPago(idTipo) {

    for (x = 0; x < ListaCondicionesPago.length; x++)
        if (ListaCondicionesPago[x].id == idTipo)
            return ListaCondicionesPago[x];

}

function InicializarUI() {
    //    $("#listaPreciosClienteCotizacion").buttonset();
    //    $("#listaPreciosClienteCotizacion").css("width", "90px");
    //    $("#listaPreciosClienteCotizacion input").css("width", "5px");
    //    $("#listaPreciosClienteCotizacion span").css("width", "5px");
}

function CopiarDatosCotizacion(desde, hacia) {
    $('#' + hacia + 'CalleVenta').val($('#' + desde + 'CalleVenta').val());
    $('#' + hacia + 'NumeroInteriorVenta').val($('#' + desde + 'NumeroInteriorVenta').val());
    $('#' + hacia + 'NumeroExteriorVenta').val($('#' + desde + 'NumeroExteriorVenta').val());
    $('#' + hacia + 'ColoniaVenta').val($('#' + desde + 'ColoniaVenta').val());
    $('#' + hacia + 'MunicipioVenta').val($('#' + desde + 'MunicipioVenta').val());
    $('#' + hacia + 'CiudadVenta').val($('#' + desde + 'CiudadVenta').val());
    $('#' + hacia + 'EstadoVenta').val($('#' + desde + 'EstadoVenta').val());
    $('#' + hacia + 'CPVenta').val($('#' + desde + 'CPVenta').val());
}

function nuevoConceptoCotizacion() {
    var noConceptos = parseInt($('#cantidadConceptosCotizacion').val());
    noConceptos++;
    var plantilla = $('#ConceptoTemplate').html();
    plantilla = plantilla.replace(/IDCON/gi, noConceptos);
    $("#ContenedorConceptosCotizacion").append(plantilla);
    $("#ConceptoDiv" + noConceptos).show();
    //$("#ConceptoDiv" + noConceptos +" input").attr("readonly","readonly");
    $('#cantidadConceptosCotizacion').val(noConceptos);
    ActivarAutocompletadoCotizacionConcepto(noConceptos);
    return noConceptos;
}

function quitarConceptoCotizacion(idConcepto) {
    //$('#idProductoConcepto' + idConcepto).val('0');
    $('#cantidadConcepto' + idConcepto).val('0');
    $('#ConceptoEliminado' + idConcepto).val('true');
    $("#ConceptoDiv" + idConcepto).hide();
    CalcularTotales(TasaIvaCotizciones);
}

function cargarConceptoCotizacion(id, unidad, cantidad, clave, categoria, linea, marca, descripcion, precio, idProducto, precio1, precio2, precio3) {
    var idConcepto = nuevoConceptoCotizacion();
    $("#ConceptoCotizacionId" + idConcepto).val(id);
    $("#idProductoConcepto" + idConcepto).val(idProducto);
    $("#unidadConcepto" + idConcepto).val(unidad);
    $("#cantidadConcepto" + idConcepto).val(cantidad);
    //alert(idConcepto);
    $("#claveConcepto" + idConcepto).val(clave);
    $("#categoriaConcepto" + idConcepto).val(categoria);
    $("#lineaConcepto" + idConcepto).val(linea);
    $("#marcaConcepto" + idConcepto).val(marca);
    $("#descripcionConcepto" + idConcepto).val(descripcion);
    $("#precioConcepto" + idConcepto).val(precio);
    $("#precio1Concepto" + idConcepto).val(precio1);
    $("#precio2Concepto" + idConcepto).val(precio2);
    $("#precio3Concepto" + idConcepto).val(precio3);
    $("#importeConcepto" + idConcepto).val(formatCurrency(CalcularImporte(idConcepto)));

}

function ActivarAutocompletadoCotizacionConcepto(idContenedorClave) {
    LoadListaProductos();
    //alert();
    $("#claveConcepto" + idContenedorClave).autocomplete(ListaProductos, {
        minChars: 0,
        width: 450,
        matchContains: "word",
        autoFill: true,
        panelPosition: "top",
        scrollHeight: 400,
        formatItem: function (row, i, max) {
            return i + "/" + max + ": \"<strong>" + row.Clave + "</strong>\" - " + row.Descripcion + "  [ " + eval("row.Precio" + ListaPreciosCotizacionesSeleccionada) + " ]";
        },
        formatMatch: function (row, i, max) {
            return row.Clave + " " + row.Descripcion;
        },
        formatResult: function (row) {
            return row.Clave;
        }
    }).result(function (event, item) {
        with (item) {
            if (id != 0) {
                $("#unidadConcepto" + idContenedorClave).val(UnidadMedida);
                $("#categoriaConcepto" + idContenedorClave).val(Categoria);
                $("#lineaConcepto" + idContenedorClave).val(Linea);
                $("#marcaConcepto" + idContenedorClave).val(Marca);
                $("#descripcionConcepto" + idContenedorClave).val(Descripcion);
                $("#precio1ConceptoCotizacion" + idContenedorClave).val(Precio1);
                $("#precio2ConceptoCotizacion" + idContenedorClave).val(Precio2);
                $("#precio3ConceptoCotizacion" + idContenedorClave).val(Precio3);
                $("#precio4ConceptoCotizacion" + idContenedorClave).val(Precio4);
                $("#precioConcepto" + idContenedorClave).val(formatCurrency(eval("Precio" + ListaPreciosCotizacionesSeleccionada)));
                $("#idProductoConcepto" + idContenedorClave).val(id);
                if ($("#cantidadConcepto" + idContenedorClave).val() == "0")
                    $("#cantidadConcepto" + idContenedorClave).val(1);
                $("#importeConcepto" + idContenedorClave).val(formatCurrency(CalcularImporte(idContenedorClave)));
                CalcularTotales(TasaIvaCotizciones);
            }
        }
    });
}

function CalcularImporte(idConcepto) {
    var precio = 0;
    if ($("#precioConcepto" + idConcepto))
        precio = parseFloat($("#precioConcepto" + idConcepto).val().replace("$", "").replace(",", ""));  //parseFloat($("#precio" + ListaPreciosCotizacionesSeleccionada + "ConceptoCotizacion" + idConcepto).val());
    var cantidad = parseFloat($("#cantidadConcepto" + idConcepto).val());
    return (precio * cantidad);
}

function CalcularTotales(TasaIVA) {
    var subtotal = new Number(0);
    var ivaLocal = new Number(0);
    var descuentoLocal = new Number(0);

    var porcenDescuento = Number(0);
    var totalDescuento = Number(0);
    for (x = 1; x <= parseInt($('#cantidadConceptosCotizacion').val()); x++) {
        var importe = CalcularImporte(x);
        //$("#precioConcepto" + x).val(formatCurrency($("#precio" + ListaPreciosCotizacionesSeleccionada + "ConceptoCotizacion" + x).val()));
        $("#importeConcepto" + x).val(formatCurrency(importe));
        subtotal += importe;
    }

    //    if ($("#DescuentoCotizacion").val().toString().indexOf("%") >= 0) {
    var porcentaje = new String($("#DescuentoCotizacion").val());
    porcentaje = new Number(porcentaje.replace(/%/g, ""));
    //alert(porcentaje)
    if (!isNaN(porcentaje))
        descuentoLocal = subtotal * (porcentaje / 100);
    else
        descuentoLocal = 0;
    //    }
    //    else {
    //        //alert($("#DescuentoCotizacion").val().toString().indexOf("%"));
    //        descuentoLocal = new Number($("#DescuentoCotizacion").val());
    //    }

    ivaLocal = (subtotal - descuentoLocal) * (TasaIVA / 100);
    $('#SubTotalVenta').val(formatCurrency(subtotal));

    if ($("#incluyeIVA").attr("checked")) {
        $('#TotalVenta').val(formatCurrency(ivaLocal + subtotal - descuentoLocal))
        $('#IVAVenta').val(formatCurrency(ivaLocal));
    }
    else {
        $('#IVAVenta').val(formatCurrency(0));
        $('#TotalVenta').val(formatCurrency(subtotal - descuentoLocal));
    }
}

function showRequestCotizacion() {
    NombreClienteCotizado = $("#NombreClienteCotizacion").val();
    TotalCotizado = $("#TotalCotizacion").val();
    CrearLoaderDiv('#DivVentas', 'DivVentasLoader');
}

function sucessCotizacion() {
    var ContenidoAlerta = $("#ResultadoProcesoCotizacion").html();
    var EsError = $("#ResultadoError").val();
    if (EsError == "error")
        MostrarError(ContenidoAlerta);
    else
        MostrarAlerta(ContenidoAlerta);
}

function ImprimirDocumento(NumeroDocumento, tipoDocumento) {
    $("#iframeLoader").attr("src", "");
    $("#iframeLoader").attr("src", "/ModuloVentas.aspx?idVenta=" + NumeroDocumento + "&impresion=true&idStatus=" + tipoDocumento);
}

function EnviarDocumentoEmail(NumeroDocumento, mensajePersonal, listaMails) {
    $("#iframeLoaderCotizacion").attr("src", "");
    $("#iframeLoaderCotizacion").attr("src", "/ModuloVentas.aspx?idVenta=" + NumeroDocumento + "&email=true&destinatarios=" + listaMails + "&mensajePersonal=" + mensajePersonal);
    // EmailDocument(NumeroDocumento, listaMails, mensajePersonal, "ModuloVentas.aspx") 
}

function ConfirmarEnvioEmailCotizacion() {

    var CamposMails = $("#MailsCliente").html();
    $("#DivListaMailsEnvio").html(CamposMails);
    $("#MailsCliente").html("");
    $(".ui-dialog").remove();
    $("#dialog-form-email-cotizacion").dialog({
        autoOpen: true,
        //        height: auto,
        width: 350,

        modal: true,
        resizable: false,
        buttons: {
            "Enviar Cotizacion": function () {
                var lista = "";
                $.each($("[rel='enviosVenta']"), function (i, val) {
                    if (val.checked == true) {
                        if (lista != "")
                            lista += "|";
                        lista += val.value;
                    }
                });
                //alert(lista);
                EnviarDocumentoEmail($('#idCotizacionMostrada').val(), $('#mensajeEmail').val(), lista);
                $("[rel='enviosVenta']").remove();
                $("#MailsCliente").html(CamposMails);
                $(this).dialog("close");


            },
            "Cancelar": function () {
                $("[rel='enviosVenta']").remove();
                $("#MailsCliente").html(CamposMails);
                $(this).dialog("close");
            }
        },
        close: function () {
            $("[rel='enviosVenta']").remove();
            $("#MailsCliente").html(CamposMails);
            allFields.val("").removeClass("ui-state-error");
        }
    });

}

function ConfirmarPagoPedido() {
    $(this).dialog("destroy");
    var randomnumber = Math.floor(Math.random() * 1001)
    $("#DivPagoAPedido").each(function () { $(this).remove(); });
    var template = $("#TemplatePagoCotizacion").html();
    template = template.replace(/Template/gi, "");
    $("#DivVentas").append(template);
    var fechaActual = new Date();
    var fechaActual2 = fechaActual.format("dd/mm/yyyy");
    //alert(fechaActual2);
    $("#FechaPagoPedido").val(fechaActual2).attr("readonly", "readonly").datepicker({ minDate: -30,
        maxDate: "+1M",
        numberOfMonths: 2,
        showButtonPanel: true
    });
    $('#MontoPagoPedido').val($("#totalCotizacionActualDeuda").val());
    LoadCuentasBancarias();
    $("#CuentaBAncariaPedido").addItemsCuentas(ListaCuentasBancarias);
    $("#FacturaParaPago").addItemsFacturasCotizacion(ListaFacturasCotizacion)




    $("#DivPagoAPedido").dialog({
        autoOpen: true,
        height: 450,
        width: 300,
        modal: true,
        resizable: false,
        buttons: {
            "Pago a Pedido": function () {

                var idCuentaPago = $('#CuentaBAncariaPedido option:selected').val();
                var noDocumentoPago = $('#NoDocumentoPedido').val();
                var fechaPago = $('#FechaPagoPedido').val();
                var totalMonto = $('#MontoPagoPedido').val();
                var idCotizacionPago = $('#idCotizacionMostrada').val();
                var idTipoDeposito = $('#TipoDepositoBancario option:selected').val();
                var idFacturaPago = $('#FacturaParaPago option:selected').val();
                var urlPago = "/ModuloVentas.aspx?RealizarPagoCotizacion=true&idVenta=" + idCotizacionPago + "&idCuentaBancaria=" + idCuentaPago + "&TotalPago=" + totalMonto + "&fechaPago=" + fechaPago + "&NoDocumento=" + noDocumentoPago + "&TipoDeposito=" + idTipoDeposito;
                if (idFacturaPago != undefined)
                    urlPago += "&idFactura=" + idFacturaPago;
                //alert(urlPago);
                $('#loaderPagosVenta').load(urlPago, function (response, status, xhr) {
                    MostrarAlerta(response);
                    CargarPaginaVentas('/ModuloVentas.aspx?idVenta=' + idCotizacionPago + '&detalle=true');
                });
                $(this).dialog("close");

            },
            "Cancelar": function () {

                $(this).dialog("close");

            }
        },
        close: function () {
            //          $(this).dialog("destroy");
            $(this).dialog("destroy");
            // allFields.val("").removeClass("ui-state-error");
        }
    });

    $('#MontoPagoPedido').keyup(function () {

        //alert(porcentajeMaximo);
        var montoActualDeuda = parseFloat($("#totalCotizacionActualDeuda").val().replace('$', '').replace(',', ''));
        var capturaActual = parseFloat($(this).val().replace('$', '').replace(',', ''));
        if (capturaActual > montoActualDeuda) {
            $(this).val(formatCurrency(montoActualDeuda));
        }
        //alert(capturaActual);
        //        var totalActual = parseFloat($("#totalCotizacionActual").val()) * porcentajeActual;
        //        $('#cantidadFacturableCotizacion').text(formatCurrency(totalActual));
    });

    //$(".ui-dialog"), find("#FechaPagoPedido").attr("id", "FechaPagoPedido" + randomnumber)

}


//$(document).ready(function () {
//    $.getJSON("/Json/GetJson", null, function (data) {
//        
//    });
//});


function confirmarBorrarCotizacion() {



    $(this).dialog("destroy");
    var randomnumber = Math.floor(Math.random() * 1001)
    $("#DivCancelacionPedido").each(function () { $(this).remove(); });
    var template = $("#TemplateCancelacionCotizacion").html();
    template = template.replace(/Template/gi, "");
    $("#DivVentas").append(template);
    //alert(fechaActual2);
    //    $('#MontoPagoPedido').val($("#totalCotizacionActualDeuda").val());
    LoadCuentasBancarias();
    $("#CuentaBAncariaCancelacion").addItemsCuentas(ListaCuentasBancarias);
    $("#DivCancelacionPedido").dialog({
        autoOpen: true,
        height: 380,
        width: 500,
        modal: true,
        resizable: false,
        buttons: {
            "Cancelar Cotizacion": function () {

                var idregistro = $('#idCotizacionMostrada').val();
                var idCuenta = $('#CuentaBAncariaCancelacion').val();
                var idtiporeem = $('#TipoReembolsoBancario').val();

                urlCancelacion = "/ModuloVentas.aspx?eliminar=true&idVenta=" + idregistro + "&idTipoRembolso=" + idtiporeem + "&idCuentaRembolso=" + idCuenta;

                $('#loaderPagosVenta').load(urlCancelacion, function (response, status, xhr) {
                    MostrarAlerta(response);
                    CargarPaginaVentas('/ModuloVentas.aspx');
                });

                // EnviarDocumentoEmail($('#idCotizacionMostrada').val(), $('#mensajeEmail').val());

                //$(this).dialog("destroy");
                $(this).dialog("close");

            },
            "Cancelar": function () {

                $(this).dialog("close");

            }
        },
        close: function () {
            //          $(this).dialog("destroy");
            $(this).dialog("destroy");
            // allFields.val("").removeClass("ui-state-error");
        }
    });



}


function imprimirRVentas() {
    $("#iframeLoader").attr("src", "");
    var contenido = $("#TableReporteVentas").html();
    var fechaInicial = $("#RepVenFechaInicial").val();
    var fechaFinal = $("#RepVenFechaFinal").val();
    PostPrintReporte("Ventas", contenido, fechaInicial, fechaFinal);
    //$("#iframeLoader").attr("src", "/ImpresionReporte.aspx?tipo=Ventas&fechaInicial=" + fechaInicial + "&fechaFinal=" + fechaFinal + "&tablaReporte=" + contenido);
}


function confirmarAsignarFactura() {
    $(this).dialog("destroy");
    var randomnumber = Math.floor(Math.random() * 1001)
    $("#DivAsignarFactura").each(function () { $(this).remove(); });
    var template = $("#TemplateAsignarFactura").html();
    var porcentajeMaximo = ((100 * parseFloat($("#totalCotizacionActualFacturable").val())) / parseFloat($("#totalCotizacionActual").val())) / 100;
    var valorPorcentaje = porcentajeMaximo * 100;
    //alert(valorPorcentaje);

    template = template.replace(/Template/gi, "");
    $("#DivVentas").append(template);
    $('#porcentajeDescuentoFactura').val(valorPorcentaje);
    $("#DivAsignarFactura").dialog({
        autoOpen: true,
        height: 250,
        width: 600,
        modal: true,
        resizable: false,
        buttons: {
            "Crear Factura": function () {
                var noDocumentoPago = parseFloat($("#porcentajeDescuentoFactura").val());
                var idCotizacionPago = $('#idCotizacionMostrada').val();
                var urlregistro = "/ModuloVentas.aspx?idVenta=" + idCotizacionPago + "&porcentajeFacturable=" + noDocumentoPago + "&";
                // alert(urlregistro);

                $('#loaderPagosVenta').load(urlregistro, function (response, status, xhr) {
                    MostrarAlerta(response);
                    CargarPaginaVentas('/ModuloVentas.aspx?idVenta=' + idCotizacionPago + '&detalle=true');
                });
                $(this).dialog("close");
            },
            "Cancelar": function () {
                $(this).dialog("close");
            }
        },
        close: function () {
            $(this).dialog("destroy");
        }
    });
    $('#cantidadFacturableVenta').text(formatCurrency($("#totalCotizacionActualFacturable").val()));
    $('#porcentajeDescuentoFactura').keyup(function () {

        //alert(porcentajeMaximo);
        var porcentajeActual = parseFloat($(this).val()) / 100;
        if (porcentajeActual > porcentajeMaximo) {
            porcentajeActual = porcentajeMaximo;
            $(this).val(porcentajeActual * 100);
        }
        var totalActual = parseFloat($("#totalCotizacionActual").val()) * porcentajeActual;
        $('#cantidadFacturableCotizacion').text(formatCurrency(totalActual));
    });

}